package co.edu.javeriana.konigsberg.xavier.servicio;

import java.math.BigInteger;
import java.util.List;

import javax.ejb.Remote;

import co.edu.javeriana.konigsberg.xavier.dto.ProgramaDTO;
import co.edu.javeriana.konigsberg.xavier.dto.ProgramaLogDTO;
import co.edu.javeriana.konigsberg.xavier.dto.PropuestaArchivoDTO;
import co.edu.javeriana.konigsberg.xavier.dto.SesionDTO;
import co.edu.javeriana.konigsberg.xavier.dto.UsuarioDTO;

@Remote
public interface ProgramaServicioRemote {
	public void guardarPrograma(ProgramaDTO programaDTO, BigInteger idUsuario);
	public List<ProgramaDTO> consultarProgramas(UsuarioDTO usuarioDTO);
	public List<ProgramaDTO> consultarProgramasGeneral(UsuarioDTO usuarioDTO);
	public void publicarPrograma(ProgramaDTO programaDTO, BigInteger idUsuario);
	public void actualizarPrograma(ProgramaDTO programaDTO, BigInteger idUsuario);
	public void actualizarProgramaEstado(ProgramaDTO programaDTO, BigInteger idUsuario);
	public void actualizarProgramaAdjudicado(ProgramaDTO programaDTO, BigInteger idUsuario);
	public void adicionarArchivo(PropuestaArchivoDTO archivoDTO);
	public void actualizarArchivos(List<PropuestaArchivoDTO> propuestasFinancierasDTOs);
	public List<ProgramaLogDTO> consultarProgramaLogs(ProgramaDTO programaDTO);
	public void guardarSesiones(List<SesionDTO> listaSesiones, BigInteger idPrograma);
}
